This invention relates to distributed computer services having online forums.
An online forum is a communications interchange in which people may communicate with others through successive electronic transmissions between respective computer systems. An online forum may be implemented on a distributed computer system such as that shown in FIG. 1. Forum participants may be scattered across a large geographic area and typically communicate with one or more central server systems 100 through respective client systems 102 (e.g., a personal or laptop computer). In practice, the server system 100 typically is not a single monolithic entity, but rather is a network of interconnected server computers, possibly physically dispersed from each other. In such a case, the individual servers are interconnected by a network of communication links (e.g., the Internet).
Each client system 102 runs client software that allows it to communicate in a meaningful manner with corresponding software running on the server 100. The client systems 102 communicate with the server 100 through various channels, such as a modem 104 connected to a telephone line 106 or a direct Internet connection using a transfer protocol such as TCP/IP (Transfer Control Protocol/Internet Protocol) that may be connected to a network 108. The server 100 is responsible for receiving input from the client systems 102 through an input device, for example, an input buffer, manipulating the collective body of input information (and possibly information from other sources) into a useful format, and retransmitting the formatted information back to one or more clients 102 for output to an output device, for example, a display screen.
As shown in FIG. 2, one type of forum is a “chat room” 200 in which various participants 204 (e.g., “Chatterbox,” “BusyB—23,” etc.) may enter text that appears in a scrolling window 202 on each participant's computer display screen. In the example in FIG. 2, the chat room 200 has 15 participants whose aliases (or “screen names”) are listed in a scrolling window 210. A participant may respond to the comment of another participant 204 by entering text in an edit box 206 and activating (e.g., by clicking with a pointing device, such as a mouse) a SEND button 208 in the user interface, by entering a keyboard command, or by some other action. In response, the text in the scrolling text window 202 scrolls upwards and the newly entered text is displayed at the bottom of the scrolling text window 202. In the illustrated example, the last participant to enter a comment was BusyB—23, who typed “see ya Louie.”
In the example in FIG. 2, the chat room 200 has been designated by the server 100 as a forum devoted to the discussion of “Football” in order to attract participants who want to discuss, for example, issues, news, or gossip pertaining to football. The server 100 may create various different chat rooms dedicated to different discussion topics, so that users of the computer service may enter a particular room and discuss a topic with other participants who desire to discuss the same topic. The chat room 200 shown in FIG. 2 is “public,” meaning that anyone may enter the chat room, and entry to the room is not restricted by the server 100. Since entry into a public chat room is unrestricted, an unlimited number of users may enter the room. When too many users are in the room and/or are sending a high volume of messages, however, the message traffic become too dense for meaningful discussion to occur, and a participant experiencing such a cacophony may quickly become unsatisfied with the chat room.
Another type of forum is a three-dimensional (3D) virtual world, which presents a 3D graphical scene to users. Multiple users, represented by different avatars in the graphical scene, may enter and navigate the virtual world, interacting with the world and with other users. The interaction with other users may be through an associated chat room or through other textual or graphical communications, for example, by causing the avatars representing the users to interact in the virtual world. As with the presence of too many participants in a chat room, too many users in a virtual world may result in a visual cacophony such that distinguishing the different avatars is difficult, or such that the 3D rendering engine becomes overloaded and cannot update the graphical representation at an acceptable rate.